导航菜单
首页 >  Qual a diferença entre server side render SSR e static site  > getStaticProps x getServerSideProps

getStaticProps x getServerSideProps

getStaticProps x getServerSidePropsYuri Oliveira Gochi

Yuri Oliveira Gochi

·

Follow

2 min read·Mar 20, 2023

--

Qual a diferença entre essas duas poderosas funções no NextJs.

NextJs

O NextJs é amplamente usado por empresas relevantes no mercado de tecnologia, como a Netflix, Uber, Tiktok, Apple e etc. Sabendo da relevância desse framework no mercado, precisamos entender o porquê é tão utilizado e saber diferenciar duas das suas funcionalidades mais poderosas: O getStaticProps e getServerSideProps.

Contextualização

Quando utilizamos uma arquitetura do lado do cliente(client-side) acontece por baixo dos panos a espera do pacote que contém todo o javascript, esse carregamento do bundle faz com que a performance do site diminua, gerando problemas em usuários com dispositivos móveis antigos ou conexões fracas. Além de performance, também há os motores de busca, o SEO ainda tem dificuldade em indexar os aplicativos Javascript no lado do cliente, então já que a página estática (HTML) é carregada antes de estar com todo o conteúdo (dados vindo do servidor), acaba acontecendo que os mecanismos de pesquisa não encontra o conteúdo para ser indexado.

Em resumo, utilizamos o NextJs para que os navegadores possam encontrar dentro da nossa página o conteúdo relevante que o usuário está pesquisando.

Qual a diferença entre getStaticProps e getServerSideProps?getStaticPropsUsando este método a página busca os dados do servidor durante o momento do build;Este método gera uma renderização muito mais rápida da página, por que ele permite que a página seja gerada de forma estática;Como os dados são gerados antes de alcançar o lado do usuário, o SEO da página melhora muito.getServerSidePropsEste método busca os dados no momento que o usuário dispara um requisição na página;Como os dados são atualizados toda vez que o usuário carrega a página, é possível ver sempre a informação mais atualizada;Como os dados são gerados antes de alcançar o lado do usuário, o SEO da página melhora muito.Conclusão

Ambas funcionalidades irão trazer melhora no SEO da sua página, basta entender qual a sua necessidade, algumas dessas dúvidas você pode encontrar a resposta que procura.

Preciso pré-renderizar uma página cujo os dados devem ser buscados no momento da requisição — getServerSideProps;Preciso dos dados sempre mais atualizados possíveis, mesmo que isso comprometa um pouco na performance da minha página — getServerSideProps;Os dados podem ser armazenados em cache publicamente — getStaticProps;Os dados podem ser buscados apenas no momento do build — getStaticProps;Preciso de performance na entrega dos meus dados e da minha página — getStaticProps.

Referências:https://nextjs.org/docs/basic-features/data-fetching/get-server-side-propshttps://nextjs.org/docs/basic-features/data-fetching/get-static-propshttps://medium.com/eincode/next-js-data-fetching-getstaticprops-vs-getserversideprops-fcbf43d0ccachttps://webera.blog/next-js-conceitos-de-ssr-e-roteamento-b%C3%A1sico-d22b32bdc0bf

相关推荐: